---
title: Application data model
summary: View models and API contracts handled by NDReimbursementWebApp, which has no database of its own.
status: generated
owner: SAIF Case Management
last_reviewed: 2026-10-20
---

# Application data model

NDReimbursementWebApp has no database, no Entity Framework context and no SQL. All persistent data is owned by the remote APIs it calls. The application holds view models for the [NDReimbursement](../screens/ndreimbursement.md) screen and maps them to and from API-client contracts with AutoMapper profiles in `Profiles.cs`.

## View models

| Type | Purpose |
| --- | --- |
| `NDRStatementModel` | Statement with its claims for the selected policy period |
| `NDRClaimModel` | One claim row, with allowed and requested amounts and bill code ([BR-SCR-003](business-rules.md#br-scr-003), [BR-SCR-004](business-rules.md#br-scr-004)) |
| `NDRClaimReimbursementInfoModel` | Requested reimbursement amount for a claim |
| `NDRStatementDueDateInfoModel` | Due-date override request ([BR-SCR-002](business-rules.md#br-scr-002)) |
| `NDRPolicyPeriodModel` | Policy period of a statement |
| `NDRPendingPaymentsInfo` | Pending online payment indicator ([BR-SCR-008](business-rules.md#br-scr-008)) |
| `NDRRequestType` | Request type enumeration |
| `DevAccessType` | Developer-access selection ([BR-APP-005](business-rules.md#br-app-005)) |
| `ModifiedClaim`, `ReimbursementsUpdate` | JSON body of the save-amounts endpoint ([Hosted endpoints](hosted-endpoints.md)) |

## Mapping

| Source | Target | Direction |
| --- | --- | --- |
| `NDRClaim` | `NDRClaimModel` | Both |
| `NDRClaimReimbursementInfo` | `NDRClaimReimbursementInfoModel` | Both |
| `NDRStatementDueDateInfo` | `NDRStatementDueDateInfoModel` | Both |
| `NDRPolicyPeriod` | `NDRPolicyPeriodModel` | Source to view model |
| `NDRStatement` | `NDRStatementModel` | Source to view model |

## API contracts

The contract types (`NDRStatement`, `NDRPolicyPeriod`, `NDRClaim`, `NDRClaimReimbursementInfo`, `NDRStatementDueDateInfo`) come from `NDReimbursementAPI.Client`. Their field lists, and the tables behind them, are not documented in a retrievable source and are not traced**. No entity relationships are documented here because none are visible from this repository.

## State

Policy context is carried in the shared `BolContext` cookie and session by the inherited page model ([INH-001](business-rules.md#inh-001)) †. The application itself persists nothing.

> **Note:** Statements marked with `†` are derived from dependency library
> documentation via the Legends CLI. Statements marked with `**` could
> not be confirmed; treat as unknown until verified.

## Related documentation
- [Application index](index.md)
- [Overview](overview.md)
- [Architecture](architecture.md)
- [Dependencies](dependencies.md)
- [Configuration](configuration.md)
- [Operations and processes](operations-processes.md)
- [Business rules](business-rules.md)
- [Security and authorization](security-authorization.md)
- [Hosted endpoints](hosted-endpoints.md)
- [Tech debt](tech-debt.md)

## Sources
- src/NDReimbursementWebApp/Profiles.cs
- src/NDReimbursementWebApp/Pages/NDReimbursement.cshtml.cs
- src/NDReimbursementWebApp/Managers/NDR/NDReimbursementManager.cs
